Create, Read, Update, এবং Delete অপারেশন ইমপ্লিমেন্ট করা

Microsoft Technologies - এন্টিটি ফ্রেমওয়র্ক (Entity Framework) Entity Framework এ CRUD অপারেশন (CRUD Operations in Entity Framework) |
183
183

Entity Framework (EF) এর মাধ্যমে Create, Read, Update, এবং Delete (CRUD) অপারেশনগুলো খুব সহজে পরিচালনা করা যায়। EF ডাটাবেসের সাথে যোগাযোগের জন্য DbContext এবং DbSet ক্লাস ব্যবহার করে এই অপারেশনগুলো সম্পাদন করা হয়। এখানে আমরা প্রতিটি CRUD অপারেশন কীভাবে EF এর মাধ্যমে বাস্তবায়িত করা যায় তা বিস্তারিতভাবে দেখব।


Create অপারেশন (Create Operation)

Create অপারেশন নতুন রেকর্ড ডেটাবেসে ইনসার্ট করতে ব্যবহৃত হয়। EF তে, আপনি একটি Entity ক্লাসের নতুন অবজেক্ট তৈরি করেন এবং সেটি DbSet এ অ্যাড করে ডেটাবেসে সেভ করতে পারেন।

Create অপারেশন উদাহরণ

using (var context = new SchoolContext())
{
    var newStudent = new Student
    {
        Name = "John Doe",
        Age = 20,
        Address = "1234 Elm St"
    };

    context.Students.Add(newStudent); // Add the new student to DbSet
    context.SaveChanges(); // Save changes to database
}

এখানে:

  • newStudent: একটি নতুন Student অবজেক্ট তৈরি করা হয়েছে।
  • context.Students.Add(newStudent): এই নতুন স্টুডেন্টকে Students টেবিলে অ্যাড করা হয়েছে।
  • context.SaveChanges(): ডেটাবেসে রেকর্ডটি সেভ করা হয়েছে।

Read অপারেশন (Read Operation)

Read অপারেশন ডেটাবেস থেকে ডেটা রিট্রাইভ বা পড়তে ব্যবহৃত হয়। EF তে, আপনি DbSet এর মাধ্যমে LINQ কুয়েরি ব্যবহার করে ডেটা রিড করতে পারেন।

Read অপারেশন উদাহরণ

using (var context = new SchoolContext())
{
    // একক স্টুডেন্ট রিড করা
    var student = context.Students.FirstOrDefault(s => s.StudentId == 1);
    Console.WriteLine($"Name: {student.Name}, Age: {student.Age}");
    
    // সকল স্টুডেন্ট রিড করা
    var allStudents = context.Students.ToList();
    foreach(var s in allStudents)
    {
        Console.WriteLine($"Name: {s.Name}, Age: {s.Age}");
    }
}

এখানে:

  • FirstOrDefault: StudentId ১ এর স্টুডেন্টটি রিড করে।
  • ToList(): সকল স্টুডেন্টকে তালিকায় রিটার্ন করে।

LINQ (Language Integrated Query) ব্যবহার করে আরও জটিল কুয়েরি করা সম্ভব, যেমন ফিল্টারিং, গ্রুপিং বা অর্ডারিং।


Update অপারেশন (Update Operation)

Update অপারেশন ডেটাবেসে বিদ্যমান রেকর্ডগুলির মান পরিবর্তন করতে ব্যবহৃত হয়। EF তে, একটি Entity এর অবজেক্টকে রিট্রাইভ করে তার প্রপার্টি পরিবর্তন করে, তারপর SaveChanges() কল করে আপডেট করা যায়।

Update অপারেশন উদাহরণ

using (var context = new SchoolContext())
{
    // প্রথমে স্টুডেন্টটি রিট্রাইভ করুন
    var student = context.Students.FirstOrDefault(s => s.StudentId == 1);
    
    if (student != null)
    {
        student.Name = "John Smith"; // Name পরিবর্তন
        student.Age = 21; // Age পরিবর্তন

        context.SaveChanges(); // Save changes to the database
    }
}

এখানে:

  • context.Students.FirstOrDefault: প্রথম স্টুডেন্টটি রিট্রাইভ করা হয়েছে।
  • SaveChanges(): প্রপার্টি আপডেট করার পর ডেটাবেসে পরিবর্তন সেভ করা হয়েছে।

EF তে, যখন একটি Entity ক্লাসের অবজেক্ট পরিবর্তন করা হয়, EF অটোমেটিক্যালি এটি ট্র্যাক করে এবং SaveChanges() কল করার মাধ্যমে পরিবর্তন ডেটাবেসে আপডেট হয়ে যায়।


Delete অপারেশন (Delete Operation)

Delete অপারেশন ডেটাবেস থেকে রেকর্ড মুছতে ব্যবহৃত হয়। EF তে, আপনি DbSet থেকে একটি Entity অবজেক্ট রিমুভ করে, তারপর SaveChanges() কল করে ডেটাবেস থেকে রেকর্ডটি মুছে ফেলতে পারেন।

Delete অপারেশন উদাহরণ

using (var context = new SchoolContext())
{
    // স্টুডেন্টটি রিট্রাইভ করুন
    var student = context.Students.FirstOrDefault(s => s.StudentId == 1);

    if (student != null)
    {
        context.Students.Remove(student); // Entity রিমুভ করা
        context.SaveChanges(); // Save changes to the database
    }
}

এখানে:

  • context.Students.Remove(student): রিট্রাইভ করা স্টুডেন্টটি DbSet থেকে রিমুভ করা হয়েছে।
  • SaveChanges(): ডেটাবেসে রেকর্ডটি মুছে ফেলা হয়েছে।

CRUD অপারেশন সমূহে LINQ এবং Raw SQL কুয়েরি ব্যবহার

Entity Framework এ CRUD অপারেশন সমূহে LINQ ব্যবহার করতে পারেন। তবে যদি আপনি Raw SQL কুয়েরি ব্যবহার করতে চান, তাও সম্ভব।

LINQ কুয়েরি উদাহরণ

using (var context = new SchoolContext())
{
    var studentsOlderThan20 = context.Students
                                      .Where(s => s.Age > 20)
                                      .ToList();

    foreach (var student in studentsOlderThan20)
    {
        Console.WriteLine($"Name: {student.Name}, Age: {student.Age}");
    }
}

Raw SQL কুয়েরি উদাহরণ

using (var context = new SchoolContext())
{
    var students = context.Students.FromSqlRaw("SELECT * FROM Students WHERE Age > {0}", 20).ToList();
    
    foreach (var student in students)
    {
        Console.WriteLine($"Name: {student.Name}, Age: {student.Age}");
    }
}

সারাংশ

Entity Framework তে CRUD অপারেশনগুলি খুবই সহজে করা যায়, যেখানে DbContext এবং DbSet ক্লাসের মাধ্যমে ডেটাবেসে রেকর্ড তৈরি, পড়া, আপডেট এবং মুছা সম্ভব। LINQ এবং Raw SQL কুয়েরি ব্যবহার করে আরও জটিল ডেটা অপারেশন করা যেতে পারে। EF এর মাধ্যমে আপনি আপনার অ্যাপ্লিকেশনকে ডেটাবেসের সঙ্গে কার্যকরভাবে ইন্টিগ্রেট করতে পারেন।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion